Techniques for radio fingerprinting

ABSTRACT

Examples are disclosed for radio fingerprinting. In some examples radio fingerprinting logic may be operative for execution on a processor component to receive a set of radio frequency signals from multiple mobile computing devices at a first time, store identification information for the set of radio frequency signals, receive a subset of the set of radio frequency signals from one of the multiple mobile computing devices at a second time, associate identification information for the subset of radio frequency signals to the one mobile computing device, and generate a multi-point radio fingerprint for the one mobile computing device based on the subset of radio frequency signals. Other examples are described and claimed.

TECHNICAL FIELD

Examples described herein are generally related to techniques for radiofingerprinting.

BACKGROUND

Many mobile computing devices include multiple wireless communicationcapabilities utilizing a variety of wireless technologies such asBluetooth® technology, wireless local area network (WLAN) using wirelesstechnologies such as Wi-Fi™ and the like, cellular networks usingwireless technologies such as GSM, CDMA and the like, and/or near fieldcommunication (NFC) technologies, etc. Each of these wirelesstechnologies may include one or more identifiers associated with themobile computing device and/or a radio of the mobile computing devicecorresponding to the respective wireless technology, however, currentmobile computing devices and wireless networks do not include anefficient way to seamlessly link the identifiers for the differentwireless technologies to the originating mobile computing device.Because it is common for a mobile computing device to have multipleradios associated with different wireless technologies active at anygiven time, it may be advantageous to correlate radio frequency signalsand/or identification information for the radio frequency signals fordifferent wireless technologies from a given mobile computing device forpurposes of identification, tracking, etc. It is with respect to theseand other considerations that the embodiments described herein areneeded.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example block diagram for an apparatus.

FIG. 2 illustrates an example block diagram for a first system.

FIG. 3 illustrates an example block diagram for a second system.

FIG. 4 illustrates an example block diagram for a third system.

FIG. 5 illustrates an example of a first logic flow.

FIG. 6 illustrates an example of a second logic flow.

FIG. 7 illustrates an example of a storage medium.

FIG. 8 illustrates an example of a device.

DETAILED DESCRIPTION

Examples are generally directed to techniques for radio fingerprintingof mobile computing devices having wireless communication capabilitiesimplemented using one or more wireless technologies or standards. Thesewireless capabilities may include establishing and/or maintainingwireless communication links and may also include wireless technologiessuitable for use with wireless devices or user equipment (UE) capable ofcoupling to other devices via any suitable wireless technology. Forexample, mobile computing devices described herein may be configured tooperate in compliance with various wireless technologies or standardsincluding but not limited to Bluetooth® technology, standards andconnections, WLAN standards such as those promulgated by the Instituteof Electrical and Electronic Engineers (IEEE), cellular technology,standards and connections such as GSM or CDMA technologies, NFCtechnology, standards and connections, etc. The type and number ofwireless technologies and standards descried herein are presented forpurposes of illustration and not limitation. As such, any type and/ornumber of suitable wireless technologies or standards could be used andstill fall within the described embodiments. In general, these wirelesstechnologies may be operative to broadcast over a wide range offrequencies ranging from, but not limited to, 85 MHz-6 GHz. Differentwireless technologies may utilize various portions of the aforementionedfrequency range as one skilled in the art will understand.

In some examples, radio fingerprinting or radio frequency fingerprintingmay comprise a process that identifies a device or signaler from which aradio transmission originated by looking at the properties of itstransmission, including identification information in the transmission,specific radio frequencies of the transmission, etc. In someembodiments, radio fingerprinting may be used to group multiple radiotransmissions or radio frequency (RF) signals originating from onemobile computing device to form a multi-point radio fingerprint. Amulti-point radio fingerprint as described herein may be used toidentify a mobile computing device based on detection of one or more ofthe RF signals originating from the mobile computing device that make upthe multi-point fingerprint. For example, a multi-point radiofingerprint for a given mobile computing device may include a commonidentifier for identification information associated with RF signalsoriginating from one or more of a Bluetooth® transceiver, a WLANtransceiver, a cellular transceiver and/or a NFC transceiver. Thisgrouping of identifiers into a multi-point radio fingerprint may allow abase station or other detection device, receiver, etc. to identify agiven mobile computing device at a number of different times, ranges,locations, etc. based on the capabilities of the respective wirelesscommunication technology and information contained in the variety of RFsignals. Other embodiments are described and claimed.

FIG. 1 illustrates a block diagram of an apparatus. As shown in FIG. 1,the apparatus includes an apparatus 100. Although apparatus 100 shown inFIG. 1 has a limited number of elements in a certain topology orconfiguration, it may be appreciated that apparatus 100 may include moreor less elements in alternate configurations as desired for a givenimplementation. In various embodiments, the apparatus 100 may comprise acomputing device 104 as shown in FIG. 1. In some embodiments, thecomputing device 104 may comprise a device capable of wired and/orwireless communication. The embodiments are not limited in this respect.

According to some examples, apparatus 100 may be part of a wirelessdevice such as computing device 104 that may be capable of operating incompliance with one or more wireless technologies. While not limited inthis respect, the computing device 104 may comprise a base station,server station, user equipment, a computer, a personal computer (PC), adesktop computer, a laptop computer, a notebook computer, a netbookcomputer, a tablet computer, an Ultrabook™ computer, a smartphone,embedded electronics, a gaming console, a server, a server array orserver farm, a web server, a network server, an Internet server, a workstation, a mini-computer, a main frame computer, a supercomputer, anetwork appliance, a web appliance, a distributed computing system,multiprocessor systems, processor-based systems, or combination thereof.

The apparatus 100 may comprise a computer and/or firmware implementedapparatus 100 having a processor component 101 arranged to executeinstructions, modules, logic and/or one or more other components ofapparatus 100. The processor component 101 may be any of variouscommercially available processors, including without limitation an AMD®Athlon®, Duron® and Opteron® processors; ARM® application, embedded andsecure processors; IBM® and Motorola® DragonBall® and PowerPC®processors; IBM and Sony® Cell processors; Qualcomm® Snapdragon®; Intel®Celeron®, Core (2) Duo®, Core i3, Core i5, Core i7, Itanium®, Pentium®,Xeon®, Atom® and XScale® processors; and similar processors. Dualmicroprocessors, multi-core processors, and other multi-processorarchitectures may also be employed as processor component 101. Theembodiments are not limited in this respect.

According to some examples processor component 101 may also be anapplication specific integrated circuit (ASIC) and other components ofapparatus 100 may be implemented as hardware elements of the ASIC.Processor component 101 may be a single processing unit or a number ofprocessing units, all of which may include single or multiple computingunits or multiple cores. The processor component 101 may be implementedas one or more microprocessors, microcomputers, microcontrollers,digital signal processors, central processing units, state machines,logic circuitries, and/or any devices that manipulate signals based onoperational instructions. Among other capabilities, the processorcomponent 101 may be configured to fetch and execute computer-readableinstructions or processor-accessible instructions stored in a memory 102or other computer-readable storage media.

Memory 102 is an example of non-transitory computer-readable storagemedia for storing instructions to be executed by the processor component101 to perform the various functions described herein. For example,memory 102 may generally include both volatile memory and non-volatilememory (e.g., RAM, ROM, or the like). Memory 102 may be referred to asmemory or computer-readable storage media herein. Memory 102 is capableof storing computer-readable, processor-executable program instructionsas computer program code that may be executed by the processor component101 as a particular machine configured for carrying out the operationsand functions described in the implementations herein.

Memory 102 may include one or more operating systems 103, and may storeone or more applications 106. The operating systems 103 may be one ofvarious known and future operating systems implemented for personalcomputers, audio video devices, mobile devices, smartphones, tablets andthe like. The applications 106 may include preconfigured/installed anddownloadable applications. In addition, memory 102 may include data 108to store the installed and downloaded applications. In some embodiments,the data 108 may include or comprise RF signal identificationinformation for use in generating and using a multi-point radiofingerprint as described elsewhere herein. The embodiments are notlimited in this respect.

In various embodiments, the computing device 104 may include a wirelesstransceiver 114. Wireless transceiver 114 may include radios 116-x andantennas 118-y in some embodiments. It is worthy to note that “x” and“y” and similar designators as used herein are intended to be variablesrepresenting any positive integer. Thus, for example, if animplementation sets a value for x=3, then a complete set of radios 116-xmay include radios 116-1, 116-2, and 116-3. The embodiments are notlimited in this context.

The radios 116-x and antennas 118-y may comprise multiple radios andmultiple corresponding antennas suitable for implementing multiplewireless communication technologies for computing device 104 in someembodiments. For example, computing device 104 may include separateradios 216-x and corresponding antennas 218-y for passively receivingWLAN RF signals 140, cellular RF signals 142, Bluetooth® RF signals 144,NFC RF signals 146 and/or location information 150 in variousembodiments. The separate radios 116-x and/or antennas 118-y may beoperative to implement a specific wireless communication technology orstandard in some embodiments. In various embodiments, antennas 118-y maycomprise one or more antennas, one or more antenna arrays or the like.The embodiments are not limited in this respect.

Memory 102 may include radio fingerprinting logic 110 in someembodiments. Radio fingerprinting logic 110 may be configured togenerate a multi-point radio fingerprint for one or more mobilecomputing devices. For example, radio fingerprinting logic 110 mayreceive a set of radio frequency signals from the radios 116-x that areassociated with multiple mobile computing devices at a first time, storeidentification information for the set of radio frequency signals,receive a subset of the set of radio frequency signals from the radios116-x that are associated with one of the multiple mobile computingdevices at a second time, associate identification information for thesubset of radio frequency signals to the one mobile computing device,and generate a multi-point radio fingerprint for the one mobilecomputing device based on the subset of radio frequency signals.

In some embodiments, computing device 104 may be arranged to utilize ageneric RF radio receiver as one of the radios 116-x. Such a generic RFradio receiver may comprise a Software Defined Radio (SDR). A SDR maycomprise a radio communication system where components that maytypically be implemented in hardware for a hardware radio system (e.g.mixers, filters, amplifiers, modulators/demodulators, detectors, etc.)are instead implemented by software on a computing device. In variousembodiments, a basic SDR system may consist of a computing deviceequipped with a sound card, or other analog-to-digital converter,preceded by some form of RF front end. Significant amounts of signalprocessing are handed over to the general-purpose processor in acomputing device having a SDR, rather than being done in special-purposehardware as is done in a system with a hardware radio. Such a designproduces a radio that can receive and transmit widely different radioprotocols (sometimes referred to as waveforms) based solely on thesoftware used. The embodiments are not limited in this respect.

The generic RF radio receiver may monitor and scan multiple commonlyused frequencies to detect the presence and electronic signature of twoor more mobile computing devices. For example, a passive SDR radioreceiver of computing device 104 may monitor and record informationabout multiple mobile computing devices that pass within range of thecomputing device 104. Thereafter, patterns may emerge as to wirelessdevice geo-traffic.

In an example embodiment, a mobile computing device may begintransmitting within an area using some set of technologies including butnot limited to WiFi, Bluetooth, GSM Cellular, CDMA Cellular, and/or NFC.Computing device 104 may be listening in that area on a range of popularfrequencies and may receive one or more of these RF signals and sendthem to the processor component 101. The processor component, via radiofingerprinting logic 110 for example, may attempt to match informationassociated with the received RF signals with known communicationstandards using those frequencies. The various communication standardsmake use of both static and dynamic identification information. Forexample, in the case of WiFi and Bluetooth®, a static MAC address istransmitted as a part of all communications from the device. In variousembodiments, a multi-point radio fingerprint may be generated from theidentification information from each technology and the information maybe stored in memory 102 as data 108 for example.

The multi-point radio fingerprint of a device may include both staticand dynamic (or temporary) identifiers. As the dynamic identifierschange over time, the static identifiers can be used to tie the newdynamic identifier back to the mobile computing device. For example,WiFi MAC addresses are typically static while GSM TMSI addresses aredynamic in nature. Over time, the GSM radio of a mobile computing devicemay change TMSI addresses but the associated static WiFi MAC address canbe used to tie the new TMSI address back to the device and to update themulti-point radio fingerprint for that device. Generating themulti-point radio fingerprint may be challenging in environments wherelots of devices are present, it is difficult to triangulate the locationof a particular device, etc. It is with respect to these and otherconsiderations that the embodiments described herein are needed.

The example computing device 104 described herein is merely an examplethat is suitable for some implementations and is not intended to suggestany limitation as to the scope of use or functionality of theenvironments, architectures and frameworks that may implement theprocesses, components and features described herein. Generally, any ofthe functions described with reference to the figures can be implementedusing software, hardware (e.g., fixed logic circuitry) or a combinationof these implementations. Program code may be stored in one or morecomputer-readable memory devices or other computer-readable storagedevices. Thus, a computer program product may implement the processesand components described herein.

As mentioned above, computer storage media includes volatile andnon-volatile, removable and non-removable media implemented in anymethod or technology for storage of information, such as computerreadable instructions, data structures, program modules, or other data.Computer storage media includes, but is not limited to, RAM, ROM,EEPROM, flash memory or other memory technology, CD-ROM, digitalversatile disks (DVD) or other optical storage, magnetic cassettes,magnetic tape, magnetic disk storage or other magnetic storage devices,or any other medium that can be used to store information for access bya computing device. Apparatus 100, computing device 104 and radiofingerprinting logic 110 may be better understood with reference to thefigures and examples that follow.

FIG. 2 illustrates a system-level overview of a first example system 200for implementing radio fingerprinting. In various embodiments, thesystem 200 may include a single computing device device 104 and one ormore mobile computing devices 202-a. In one embodiment, the stationdevice 104 may comprise a base station and may be the same or similar tothe computing device 104 of FIG. 1. The mobile computing devices 202-amay comprise any suitable mobile computing device having wirelesscommunications capabilities including but not limited to two smartphonedevices as shown in FIG. 2.

While not shown in FIG. 2, station device 104 may include an array thatmay include one or more antennas capable of transmitting and/orreceiving communication signals using one or more wireless communicationtechnologies as described above with reference to FIG. 1. In someembodiments, computing device device 104 may include a generic RFreceiver operative to monitor and scan multiple commonly usedfrequencies to detect the presence and electronic signature of multiplemobile computing devices 202-a. Also, in some examples, devices 202-amay include arrays similar to those of station device 104. The arraysmay include one or more antennas capable of transmitting and/orreceiving communication signals via a given wireless communicationtechnology. For example, each of devices 202-a may include wirelesstransceivers capable of sending/receiving cellular RF signals 204, WLANRF signals 206 and/or Bluetooth® RF signals 208. The embodiments are notlimited in this respect.

In various embodiments, computing device 104 may be operative topassively receive the plurality of RF signals 204-k, 206-l and 208-m.For example, rather than requesting or receiving the RF signals inassociation with a connection request, the computing device 104 mayinstead simply monitor and scan multiple commonly used frequencies todetect RF signals being emitted, broadcast, etc. by one or more mobilecomputing devices 202-a. Because multiple RF signals 204-k, 206-l and208-m may be received from multiple mobile computing devices 202-a atany given time, it may be difficult to identify which RF signals 204-k,206-l and 208-m correspond to a respective mobile computing device202-a. For example, if two mobile computing devices are in closeproximity to one another, it may be difficult for computing device 104to differentiate between the RF signals 204-k, 206-l and 208-m beingoutput by each device. As a result, radio fingerprinting logic 110 mayinclude or comprise an algorithm to identify and correlate RF signals204-k, 206-l and 208-m to a mobile computing device 202-a over timebased on historical data, comparisons of received data to known data,location information, and/or any other suitable factor or criteria.Other embodiments are described and claimed.

In one embodiment, radio fingerprinting logic 110 of computing device104 may be operative to receive a set of radio frequency signals frommultiple mobile computing devices at a first time. For example, themobile computing devices 202-a shown in FIG. 2 may be within wirelessrange of computing device 104 at a first time such as on a first daywhile at a store controlling computing device 104 or in the morningwhile walking to work and passing by the location of computing device104. At this first time, computing device 104 may receive one or more ofRF signals 204-k, 206-l and 208-m from mobile computing devices 202-a.

In various embodiments, computing device 104 may store identificationinformation for the set of radio frequency signals based on the receivedRF signals 204-k, 206-l and 208-m. For example, the computing device 104may receive two cellular RF signals and two WLAN RF signals. The WLAN RFsignals may contain a static MAC address that the computing device 104may store in database 102 as identification information. The cellular RFsignals my also contain identification information, however, thisinformation may be dynamic (e.g. temporary). Despite the temporarynature of this identification information, the computing device 104 maystore it in database 102. As part of the storing, computing device 104may mark each of the received RF signals 204-k, 206-l and 208-m ashaving a potential correlation to one of the mobile computing devices202-a. Absent additional information, it may be difficult to correlatethe RF signals 204-k, 206-l and 208-m to a given mobile computing device202-a, but the computing device 104 will continue to listen foradditional information that may allow for further identification of theRF signals 204-k, 206-l and 208-m.

Computing device 104 may receive a subset of the set of RF signals204-k, 206-l and 208-m from the radios 116-x that are associated withone of the multiple mobile computing devices 202-a at a second time insome embodiments. For example, later in the day on the walk home fromwork or during another visit to the store in the examples above, mobilecomputing device 202-1 may be within wireless range of computing device104 without the presence of another mobile computing device and/orwithout the presence of another mobile computing device that waspreviously present at the same time as mobile computing device 202-1. Inthis example, computing device 104 may again receive cellular RF signal204-1 and WLAN RF signal 206-1. Because these signals were previouslyreceived together, the computing device 104 may assume that there issome connection between them. Additionally, while the cellular RF signal204-1 and WLAN RF signal 206-1 were previously detected along with thecellular RF signal and WLAN RF signal from another device, because thesignals from the other device are no longer present, the computingdevice 104 may associate identification information for the subset ofradio frequency signals (e.g. cellular RF signal 204-1 and WLAN RFsignal 206-1) to the one mobile computing device (e.g. 202-1).

Based on this correlation, the computing device 104 may generate amulti-point radio fingerprint for the one mobile computing device 202-1based on the subset of radio frequency signals (e.g. cellular RF signal204-1 and WLAN RF signal 206-1). In various embodiments, the multi-pointradio fingerprint may comprise a generic identifier associated with thesubset of radio frequency signals output by the one mobile computingdevice. For example, the computing device 104 may correlate temporaryidentification information for a first radio frequency signal of thesubset of radio frequency signals (e.g. for cellular RF signal 204-1)with permanent identification information for a second radio frequencysignal of the subset of radio frequency signals (e.g. for WLAN RF signal204-2) to generate the multi-point radio fingerprint.

Computing device 104 may store the identification information for the RFsignals 204-k, 206-l, and 208-m and/or the multi-point radio fingerprintin a radio fingerprint database 102 of the computing device 104 in someembodiments as shown in FIG. 2. While FIG. 2 shows only a singlecomputing device 104 having a local database 102, it should beunderstood that the embodiments are not limited in this respect. Otherembodiments are described and claimed, particularly with respect toFIGS. 3 and 4. In the embodiments shown in FIG. 2, it may be possible todetermine a location of the one mobile computing device 202-1 based onsignal strength information for one or more of the subset of radiofrequency signals and a known location of the base station. Locationidentification, however, may be performed more accurately using theother systems described herein. Other embodiments are described andclaimed.

In various embodiments, the first radio frequency signal may have agreater range than the second radio frequency signal. For example, asdescribed elsewhere herein, the subset of radio frequency signals maycomprise two or more different radio frequency technologies or standardsincluding but not limited to a cellular radio frequency technology orstandard, a wireless local area network (WLAN) technology or standard, apersonal area network (PAN) technology or standard or a near fieldcommunication (NFC) technology or standard. In an example with the firstRF signal comprising a cellular RF signal and the second RF signalcomprising a WLAN, Bluetooth® or NFC RF signal, computing device 104 maydetect the first RF signal from a much greater distance, allowing for anearlier or broader range identification, tracking, etc. of the mobilecomputing device if the first RF signal is part of a multi-point radiofingerprint.

FIG. 3 illustrates a system-level overview of an example system 300 forimplementing radio fingerprinting. In various embodiments, the system300 may be similar to system 200 of FIG. 2 but instead of only a singlecomputing device 104 the system 300 may include multiple computingdevices 104-b and two or more mobile computing devices 202-a. In oneembodiment, the station devices 104-b may comprise separate basestations that form part of a network or otherwise communicate with acommon server station 302 and each may be the same or similar to thecomputing device 104 of FIG. 1. As described above, the mobile computingdevices 202-a may comprise any suitable mobile computing device havingwireless communications capabilities including but not limited to a twosmartphone devices as shown.

In various embodiments, the receipt of the multiple RF signals 204-k,206-l and 208-m may be the same for each of the computing devices 104-bas described above with reference to FIG. 2. Rather than storing theidentification information and/or the multi-point radio fingerprint forthe RF signals 204-k, 206-l and 208-m in a local database 102 at eachcomputing device 104-b, the system 300 may include a centralizeddatabase 304 maintained at a server station 302 that is accessible byeach of the computing devices 104-b. For example, each computing device104-b may be operative to store the identification information or anyother suitable information associated with a multi-point radiofingerprint in a shared radio fingerprint database 304 of a coordinatingserver station 302.

In various embodiments, the server station 302 may be the same orsimilar to any of the computing devices 104-b. For example, in oneembodiment one of the computing devices 104-b may act as the serverstation in addition to acting as a computing device 104-b. In otherembodiments, the server station 302 may comprise a server devicespecifically arranged to perform server coordination operations inconnection with the generation and tracking of multi-point radiofingerprints. The embodiments are not limited in this respect.

In the multiple computing device context shown in FIG. 3, the locationof each computing device may be known. All of the features of the singlecomputing device system 200 may apply although device uniqueness usinglocation is much more easily established using the system 300. Invarious embodiments, the multiple computing devices 104-b may beoperative to detect radio fingerprints independently but may share thedatabase 304 via coordinating server 302. Fingerprints detected bymultiple computing devices 104-b may be resolved to more accuratelocations by examining the precise arrival time of received signals andtriangulating a position of the mobile computing device based on theposition of the static devices 104-b. For example, one or more of thecomputing devices 104-b may be operative to receive arrival timeinformation from the coordinating server station 302 to assist indetermining the location or position of a mobile computing device. Thearrival time information may comprise a time when the subset of radiofrequency signals were received by multiple computing devices 104-b. Insome embodiments, the one or more computing devices 104-b may determinea location of the one mobile computing device based on the arrival timeinformation and a known location of two or more of the multiple basestations using known triangulation techniques. Other embodiments aredescribed and claimed.

FIG. 4 illustrates a system-level overview of an example system 400 forimplementing radio fingerprinting. In various embodiments, the system400 may be similar to systems 100 of

FIGS. 1 and 200 of FIG. 2 but instead of only a single computing device104 or multiple computing devices 104-b, the system 400 may includemultiple dynamic stations 404-c and two or more mobile computing devices202-a. In one embodiment, the dynamic stations 404-c may compriseseparate base stations that form part of a network or otherwisecommunicate with one another and each may be the same or similar to thecomputing device 104 of FIG. 1. However, the dynamic stations 404-c ofsystem 400 may be capable of being moved or relocated rather than beingstationary and/or static. As described above, the mobile computingdevices 202-a may comprise any suitable mobile computing device havingwireless communications capabilities including but not limited to a twosmartphone devices as shown.

The dynamic station 404-c infrastructure shown in FIG. 4 may functionsimilarly to the multiple computing device infrastructure shown in FIG.3 except that each dynamic station 404-c may be operative to maintain adistributed copy of the database 406-d and may periodically transmit abeacon to the other dynamic stations 404-c. In various embodiments, thedynamic stations 404-c may move over time so the periodic beacon may beused to update the location of each dynamic station 404-c over time.Each dynamic station 404-c may transmit a beacon comprising an updatewith timing information for the other dynamic stations. With thisinformation, each dynamic station 404-c may be operative to determinethe location of the other dynamic stations 404-c and hence the locationof a mobile computing device 202-a in communication with one or more ofthe dynamic stations 404-c. In some embodiments, a radio fingerprinthistory, including location, location accuracy and identification tagsmaking up each radio fingerprint may be accessed and processed byauthorized systems. Optionally, one or more of the dynamic stations404-c can forward fingerprint information to additional devices orsystems interested in the data. The embodiments are not limited in thisrespect.

In various embodiments, any of the dynamic stations 404-c may beoperative to store the multi-point radio fingerprint generated asdescribed elsewhere herein in a radio fingerprint database of therespective dynamic station 404-c and to send updated locationinformation for the dynamic station 404-c to one or more other dynamicstations 404-c. The dynamic station 404-c may also be operative toreceive updated location information and/or signal strength informationfor the subset of radio frequency signals from the one or more otherdynamic stations 404-c and to determine a location of the one mobilecomputing device based on a location of the dynamic station 404-c, adetermined location of the one or more other dynamic stations 404-c andthe received signal strength information. Other embodiments aredescribed and claimed.

The embodiments described herein may be better understood with referenceto the following examples that may comprise exemplary use case scenariosfor any of the apparatus and/or systems described herein. These examplesare provided for purposes of illustration and clarification and are notintended to be limiting. One skilled in the art will recognize thatthese examples represent only a few of many possible uses for theembodiments described herein.

One example use for radio fingerprinting as described herein maycomprise a point-of-sale (POS) scenario where merchants may be able totrack customers based on a radio fingerprint of a device controlled bythe customer. For example, the merchant may be able to track an amountof time a wireless device spends shopping and perhaps a POS transaction.Subsequent detections of the device may trigger customer servicebehavior toward the owner of the device (e.g., enhanced customerservice, greetings, welcome back, etc.) In addition, data associatedwith the multi-point radio fingerprint may be historically analyzed todetermine the quality of that wireless device with respect to purchasingor browsing activity. For example, it may be possible to determine ifthe device spent most of its time in proximity to a particular productor section of a store or if the user of that device typically purchasesa particular product.

In other POS scenarios, radio fingerprinting may be used to identify newversus repeat customers, identify where customers go in a store, and/oridentify time spent in a store or in a particular section of a store. Invarious embodiments, radio fingerprinting may also be used in a POSscenario to count foot traffic outside a store, to test theeffectiveness of displays both outside and inside a store, to identifywhen high value customers enter a store (to dispatch a representative,for example), to intelligently change an electronic advertisement basedon the identity of the devices near it, and/or as a first step in asystem designed to push offers to the mobile computing devicesassociated with the known multi-point radio fingerprints. Theembodiments are not limited in this respect.

Radio fingerprinting as described herein may also be useful in securityand surveillance scenarios. For example, in a crime/neighborhood watchscenario, devices may be tracked in a convenience store for example. Ifthe convenience store is robbed, a log of all wireless devices in closeproximity at the time of the robbery could lead to suspects and/orwitnesses. The devices may then be tracked to see where they show upnext provided a network of passive receivers exists. In otherembodiments a radio fingerprint may be useful to track/follow asuspicious mobile device, to identify when a particular mobile devicestarts moving, and/or to identify when a particular mobile devicesleaves or enters a specific area. From a surveillance perspective, radiofingerprinting may be use to identify possible issues when one mobiledevice gets too close to another mobile device typically carried bysomeone with a restraining order against the owner of the other mobilecomputing device and/or to tie a mobile computing device to othersecurity information such as a video of a perpetrator.

In an office scenario, radio fingerprinting as described herein may beuseful for the detection of a known wireless device that may trigger amultitude of activities. For example, commands may be sent to boot thecomputer of the person associated with the mobile computing device uponentry into the office so as to be ready when he/she sits down. In otherembodiments, the user's status may be updated on an office-wide LAN toindicate presence in the building based on detection of a radiofingerprint associated with a device under their control. In still otherembodiments calls intended for a mobile device of a user may be routedto another device, such as to a desk or office phone, based on aproximity of the two devices.

Radio fingerprinting as described herein may be useful for counting invarious embodiments. For example, for large outdoor events, differentgroups may be tasked with estimating the total number of people that arepresent in a given area. Radio fingerprinting may allow these groups toobtain far more accurate numbers and potentially distinguish betweenparticipants and onlookers. In some embodiments, multiple radiofingerprint implementations may be tied together to track fingerprintsacross a much larger space. For example, a global radio fingerprintregistry my be implemented to make all radio fingerprintingimplementations more accurate by removing ambiguity and identifyingspoofing attempts and when tied to other data sources theseimplementations may be much more useful in solving their individualproblems. Other embodiments are described and claimed.

Included herein is a set of logic flows representative of examplemethodologies for performing novel aspects of the disclosedarchitecture. While, for purposes of simplicity of explanation, the oneor more methodologies shown herein are shown and described as a seriesof acts, those skilled in the art will understand and appreciate thatthe methodologies are not limited by the order of acts. Some acts may,in accordance therewith, occur in a different order and/or concurrentlywith other acts from that shown and described herein. For example, thoseskilled in the art will understand and appreciate that a methodologycould alternatively be represented as a series of interrelated states orevents, such as in a state diagram. Moreover, not all acts illustratedin a methodology may be required for a novel implementation.

A logic flow may be implemented in software, firmware, and/or hardware.In software and firmware embodiments, a logic flow may be implemented bycomputer executable instructions stored on at least one non-transitorycomputer readable medium or machine readable medium, such as an optical,magnetic or semiconductor storage. The embodiments are not limited inthis context.

FIG. 5 illustrates an example of a first logic flow. As shown in FIG. 5,the first logic flow includes a logic flow 500. Logic flow 500 may berepresentative of some or all of the operations executed by one or morelogic, features, or devices described herein, such as any devices orsystems described above with references to FIGS. 1-4 for example. Moreparticularly, logic flow 500 may be implemented by radio fingerprintinglogic 110 of a station device 104, 104-b and/or 404-c in someembodiments. Other embodiments are described and claimed.

In the illustrated example shown in FIG. 5, logic flow 500 may comprisea signal diagram illustrating the steps involved in generating amulti-point radio fingerprint as described elsewhere herein. While theembodiments shown in FIG. 5 include two mobile computing devices 102-aand a single computing device 104 (e.g. computing device 104), it shouldbe understood that similar steps to those shown in FIG. 5 may beapplicable to other systems described elsewhere herein. As such, theembodiments are not limited to the number, type, order or arrangement ofsteps shown in FIG. 5.

As shown in FIG. 5, mobile computing device 102-1 may transmit wirelessinformation 502 that may be received by computing device 104 at time 1506. The wireless information 502 may comprise multiple RF signals insome embodiments such as a cellular RF signal, a WLAN RF signal, aBluetooth® RF signal and/or a NFC RF signal all of which may originatefrom mobile computing device 102-1. Similarly, mobile computing device102-2 may transmit wireless information 504 that may also be received bycomputing device 104 at time 1 506. The wireless information 504 maycomprise multiple RF signals in some embodiments such as a cellular RFsignal, a WLAN RF signal, a Bluetooth® RF signal and/or a NFC RF signalall of which may originate from mobile computing device 102-2. Receiptof wireless information 502 and 504, which together may comprise a setof RF signals 508, at time 1 506 may make it difficult to determinewhich RF signals corresponds to which device 102-1 or 102-2. However,the computing device 104 may store identification information found inthe wireless information 502/504 at 510. At a subsequent time 2 512,that is different than time 1 506, computing device 104 may receivewireless information 514 from mobile computing device 102-1. In someembodiments, this wireless information 514 may comprise a subset 516 ofthe set 508. For example, computing device 104 may determine that thesubset of RF signals 516 may comprise only the RF signals originatingfrom mobile computing device 102-1 because only one device (e.g. mobilecomputing device 102-1) is detected, etc. Based on this determination,the computing device 104 may associate the identification informationfor the subset of RF signals 516 to the mobile computing device 102-1 at518 and may generate a multi-point radio fingerprint based on thisinformation at 520. Other embodiments are described and claimed.

FIG. 6 illustrates an example of a second logic flow. As shown in FIG.6, the second logic flow includes a logic flow 600. Logic flow 600 maybe representative of some or all of the operations executed by one ormore logic, features, or devices described herein, such as any devicesdescribed above with references to FIGS. 1-4 for example. Moreparticularly, logic flow 600 may be implemented by radio fingerprintinglogic 110 of a computing device 104, 104-b, 404-c in some embodiments.Other embodiments are described and claimed.

In the illustrated example shown in FIG. 6, the logic flow may includereceiving a set of radio frequency signals from multiple mobilecomputing devices at a first time at 602. For example, computing device104 may receive a set of RF signals comprising any number of RF signals204-k, 206-l , and/or 208-m from mobile computing devices 202-a. At 604the logic flow may include storing identification information for theset of radio frequency signals. For example, computing device 104 maystore identification information for the set of RF signals in a localdatabase or in a centralized database.

In various embodiments, the logic flow may include receiving a subset ofthe set of radio frequency signals from the radios 116-x that areassociated with one of the multiple mobile computing devices at a secondtime at 606. For example, computing device 104 may receive only the RFsignals 204-1, 206-1 and 208-1 from one or more of the radios of mobilecomputing device 102-1 at a second time that is different than the firsttime. At 608 the logic flow may include associating identificationinformation for the subset of radio frequency signals to the one mobilecomputing device. For example, because the computing device 104determines that the RF signals 204-1, 206-1 and 208-1 continue to showup in the presence of mobile computing device 202-1, computing device104 may assume that these RF signals are originating from that device.At 610 the logic flow may include generating a multi-point radiofingerprint for the one mobile computing device based on the subset ofradio frequency signals. The embodiments are not limited in thisrespect.

FIG. 7 illustrates an embodiment of a first storage medium. As shown inFIG. 7, the first storage medium includes a storage medium 700. Storagemedium 700 may comprise an article of manufacture. In some examples,storage medium 700 may include any non-transitory computer readablemedium or machine-readable medium, such as an optical, magnetic orsemiconductor storage. Storage medium 700 may store various types ofcomputer executable instructions, such as instructions to implementlogic flow 600. Examples of a computer readable or machine readablestorage medium may include any tangible media capable of storingelectronic data, including volatile memory or non-volatile memory,removable or non-removable memory, erasable or non-erasable memory,writeable or re-writeable memory, and so forth. Examples of computerexecutable instructions may include any suitable type of code, such assource code, compiled code, interpreted code, executable code, staticcode, dynamic code, object-oriented code, visual code, and the like. Theexamples are not limited in this context.

FIG. 8 illustrates an embodiment of a device 800. In some examples,device 800 may be configured or arranged for wireless communications ina wireless network. Device 800 may implement, for example, apparatus 100and/or storage medium 700. The logic circuit 870 may include physicalcircuits to perform operations described for apparatus 100. As shown inFIG. 8, device 800 may include a radio interface 810, baseband circuitry820, and computing platform 830, although examples are not limited tothis configuration.

The device 800 may implement some or all of the structure and/oroperations for apparatus 100, storage medium 700 and/or logic circuit870 in a single computing entity, such as entirely within a singledevice. The embodiments are not limited in this context.

Radio interface 810 may include a component or combination of componentsadapted for transmitting and/or receiving single carrier ormulti-carrier modulated signals (e.g., including complementary codekeying (CCK) and/or orthogonal frequency division multiplexing (OFDM)symbols and/or single carrier frequency division multiplexing (SC-FDMsymbols) although the embodiments are not limited to any specificover-the-air interface or modulation scheme. Radio interface 810 mayinclude, for example, a receiver 812, a transmitter 816 and/or afrequency synthesizer 814. Radio interface 810 may include biascontrols, a crystal oscillator and/or one or more antennas 818-ƒ. Inanother embodiment, radio interface 810 may use externalvoltage-controlled oscillators (VCOs), surface acoustic wave filters,intermediate frequency (IF) filters and/or RF filters, as desired. Dueto the variety of potential RF interface designs an expansivedescription thereof is omitted.

Baseband circuitry 820 may communicate with radio interface 810 toprocess receive and/or transmit signals and may include, for example, ananalog-to-digital converter 822 for down converting received signals, adigital-to-analog converter 824 for up converting signals fortransmission. Further, baseband circuitry 820 may include a baseband orphysical layer (PHY) processing circuit 826 for PHY link layerprocessing of respective receive/transmit signals. Baseband circuitry820 may include, for example, a processing circuit 828 for medium accesscontrol (MAC)/data link layer processing. Baseband circuitry 820 mayinclude a memory controller 832 for communicating with MAC processingcircuit 828 and/or a computing platform 830, for example, via one ormore interfaces 834.

In some embodiments, PHY processing circuit 826 may include a frameconstruction and/or detection module, in combination with additionalcircuitry such as a buffer memory, to construct and/or deconstructcommunication frames (e.g., containing subframes). Alternatively or inaddition, MAC processing circuit 828 may share processing for certain ofthese functions or perform these processes independent of PHY processingcircuit 826. In some embodiments, MAC and PHY processing may beintegrated into a single circuit.

Computing platform 830 may provide computing functionality for device800. As shown, computing platform 830 may include a processing component840. In addition to, or alternatively of, baseband circuitry 820 ofdevice 800 may execute processing operations or logic for apparatus200/300, storage medium 800/900, and logic circuit 870 using theprocessing component 830. Processing component 840 (and/or PHY 826and/or MAC 828) may comprise various hardware elements, softwareelements, or a combination of both. Examples of hardware elements mayinclude devices, logic devices, components, processors, microprocessors,circuits, processor circuits (e.g., processor circuit 820), circuitelements (e.g., transistors, resistors, capacitors, inductors, and soforth), integrated circuits, application specific integrated circuits(ASIC), programmable logic devices (PLD), digital signal processors(DSP), field programmable gate array (FPGA), memory units, logic gates,registers, semiconductor device, chips, microchips, chip sets, and soforth. Examples of software elements may include software components,programs, applications, computer programs, application programs, systemprograms, software development programs, machine programs, operatingsystem software, middleware, firmware, software modules, routines,subroutines, functions, methods, procedures, software interfaces,application program interfaces (API), instruction sets, computing code,computer code, code segments, computer code segments, words, values,symbols, or any combination thereof. Determining whether an example isimplemented using hardware elements and/or software elements may vary inaccordance with any number of factors, such as desired computationalrate, power levels, heat tolerances, processing cycle budget, input datarates, output data rates, memory resources, data bus speeds and otherdesign or performance constraints, as desired for a given example.

Computing platform 830 may further include other platform components850. Other platform components 850 include common computing elements,such as one or more processors, multi-core processors, co-processors,memory units, chipsets, controllers, peripherals, interfaces,oscillators, timing devices, video cards, audio cards, multimediainput/output (I/O) components (e.g., digital displays), power supplies,and so forth. Examples of memory units may include without limitationvarious types of computer readable and machine readable storage media inthe form of one or more higher speed memory units, such as read-onlymemory (ROM), random-access memory (RAM), dynamic RAM (DRAM),Double-Data-Rate DRAM (DDRAM), synchronous DRAM (SDRAM), static RAM(SRAM), programmable ROM (PROM), erasable programmable ROM (EPROM),electrically erasable programmable ROM (EEPROM), flash memory, polymermemory such as ferroelectric polymer memory, ovonic memory, phase changeor ferroelectric memory, silicon-oxide-nitride-oxide-silicon (SONOS)memory, magnetic or optical cards, an array of devices such as RedundantArray of Independent Disks (RAID) drives, solid state memory devices(e.g., USB memory, solid state drives (SSD) and any other type ofstorage media suitable for storing information.

Computing platform 830 may further include a network interface 860. Insome examples, network interface 860 may include logic and/or featuresto support network interfaces operated in compliance with one or morewireless broadband technologies such as those described in one or morestandards associated with IEEE 802.11 such as IEEE 802.11ad.

Device 800 may be, for example, user equipment, a computer, a personalcomputer (PC), a desktop computer, a laptop computer, a notebookcomputer, a netbook computer, a tablet computer, an ultrabook computer,a smart phone, embedded electronics, a gaming console, a server, aserver array or server farm, a web server, a network server, an Internetserver, a work station, a mini-computer, a main frame computer, asupercomputer, a network appliance, a web appliance, a distributedcomputing system, multiprocessor systems, processor-based systems, orcombination thereof. Accordingly, functions and/or specificconfigurations of device 800 described herein, may be included oromitted in various embodiments of device 800, as suitably desired. Insome embodiments, device 800 may be configured to be compatible withprotocols and frequencies associated with IEEE 802.11 Standards forWLANs and/or for wireless docking, although the examples are not limitedin this respect.

Embodiments of device 800 may be implemented using single input singleoutput (SISO) antenna architectures. However, certain implementationsmay include multiple antennas (e.g., antennas 818-ƒ) for transmissionand/or reception using adaptive antenna techniques for beamforming orspatial division multiple access (SDMA) and/or using multiple inputmultiple output (MIMO) communication techniques.

The components and features of device 800 may be implemented using anycombination of discrete circuitry, application specific integratedcircuits (ASICs), logic gates and/or single chip architectures. Further,the features of device 800 may be implemented using microcontrollers,programmable logic arrays and/or microprocessors or any combination ofthe foregoing where suitably appropriate. It is noted that hardware,firmware and/or software elements may be collectively or individuallyreferred to herein as “logic” or “circuit.”

It should be appreciated that the exemplary device 800 shown in theblock diagram of FIG. 8 may represent one functionally descriptiveexample of many potential implementations. Accordingly, division,omission or inclusion of block functions depicted in the accompanyingfigures does not infer that the hardware components, circuits, softwareand/or elements for implementing these functions would be necessarily bedivided, omitted, or included in embodiments.

Some examples may be described using the expression “in one example” or“an example” along with their derivatives. These terms mean that aparticular feature, structure, or characteristic described in connectionwith the example is included in at least one example. The appearances ofthe phrase “in one example” in various places in the specification arenot necessarily all referring to the same example.

Some examples may be described using the expression “coupled”,“connected”, or “capable of being coupled” along with their derivatives.These terms are not necessarily intended as synonyms for each other. Forexample, descriptions using the terms “connected” and/or “coupled” mayindicate that two or more elements are in direct physical or electricalcontact with each other. The term “coupled,” however, may also mean thattwo or more elements are not in direct contact with each other, but yetstill co-operate or interact with each other.

It is emphasized that the Abstract of the Disclosure is provided tocomply with 37 C.F.R. Section 1.72(b), requiring an abstract that willallow the reader to quickly ascertain the nature of the technicaldisclosure. It is submitted with the understanding that it will not beused to interpret or limit the scope or meaning of the claims. Inaddition, in the foregoing Detailed Description, it can be seen thatvarious features are grouped together in a single example for thepurpose of streamlining the disclosure. This method of disclosure is notto be interpreted as reflecting an intention that the claimed examplesrequire more features than are expressly recited in each claim. Rather,as the following claims reflect, inventive subject matter lies in lessthan all features of a single disclosed example. Thus the followingclaims are hereby incorporated into the Detailed Description, with eachclaim standing on its own as a separate example. In the appended claims,the terms “including” and “in which” are used as the plain-Englishequivalents of the respective terms “comprising” and “wherein,”respectively. Moreover, the terms “first,” “second,” “third,” and soforth, are used merely as labels, and are not intended to imposenumerical requirements on their objects.

What is claimed is:
 1. At least one machine-readable medium comprising aset of instructions that in response to being executed on a computingdevice cause the computing device to: passively receive a set of radiofrequency signals from multiple mobile computing devices at a firsttime; store identification information for the set of radio frequencysignals; receive a subset of the set of radio frequency signals from oneof the multiple mobile computing devices at a second time; associateidentification information for the subset of radio frequency signals tothe one mobile computing device; and generate a multi-point radiofingerprint for the one mobile computing device based on the subset ofradio frequency signals.
 2. The at least one machine-readable medium ofclaim 1, the subset of radio frequency signals comprising two or moredifferent radio frequency technologies or standards.
 3. The at least onemachine-readable medium of claim 1, comprising instructions that inresponse to being executed on the computing device cause the computingdevice to compare the identification information for the subset of radiofrequency signals to the stored identification information.
 4. The atleast one machine-readable medium of claim 1, comprising instructionsthat in response to being executed on the computing device cause thecomputing device to store the multi-point radio fingerprint in a radiofingerprint database of a base station.
 5. The at least onemachine-readable medium of claim 4, comprising instructions that inresponse to being executed on the computing device cause the computingdevice to determine a location of the one mobile computing device basedon signal strength information for one or more of the subset of radiofrequency signals and a known location of the base station.
 6. The atleast one machine-readable medium of claim 1, comprising instructionsthat in response to being executed on the computing device cause thecomputing device to store the multi-point radio fingerprint in a sharedradio fingerprint database of a coordinating server station.
 7. The atleast one machine-readable medium of claim 6, comprising instructionsthat in response to being executed on the computing device cause thecomputing device to: receive arrival time information from thecoordinating server station, the arrival time information comprising atime when the subset of radio frequency signals were received bymultiple base stations; and determine a location of the one mobilecomputing device based on the arrival time information and a knownlocation of two or more of the multiple base stations.
 8. The at leastone machine-readable medium of claim 1, comprising instructions that inresponse to being executed on the computing device cause the computingdevice to: store the multi-point radio fingerprint in a radiofingerprint database of a base station; send updated locationinformation for the base station to one or more other base stations;receive updated location information and signal strength information forthe subset of radio frequency signals from the one or more other basestations; and determine a location of the one mobile computing devicebased on a location of the base station, a determined location of theone or more other base stations and the received signal strengthinformation.
 9. The at least one machine-readable medium of claim 1,comprising instructions that in response to being executed on thecomputing device cause the computing device to correlate temporaryidentification information for a first radio frequency signal of thesubset of radio frequency signals with permanent identificationinformation for a second radio frequency signal of the subset of radiofrequency signals to generate the multi-point radio fingerprint.
 10. Theat least one machine-readable medium of claim 9, the first radiofrequency signal having a greater range than the second radio frequencysignal.
 11. The at least one machine-readable medium of claim 1, themulti-point radio fingerprint comprising a generic identifier associatedwith the subset of radio frequency signals output by the one mobilecomputing device.
 12. An apparatus, comprising: a processor component;at least one RF receiver component to passively receive a set of radiofrequency signals from multiple mobile computing devices; and radiofingerprinting logic to be executed by the processor component toreceive the set of radio frequency signals from the at least one RFreceiver component at a first time, store identification information forthe set of radio frequency signals, receive a subset of the set of radiofrequency signals from the at least one RF receiver component andassociated with one of the multiple mobile computing devices at a secondtime, associate identification information for the subset of radiofrequency signals to the one mobile computing device, and generate amulti-point radio fingerprint for the one mobile computing device basedon the subset of radio frequency signals.
 13. The apparatus of claim 12,the at least one RF receiver component comprising a Software DefinedRadio (SDR).
 14. The apparatus of claim 12, the subset of radiofrequency signals comprising two or more different radio frequencytechnologies or standards.
 15. The apparatus of claim 12, the radiofingerprinting logic to compare the identification information for thesubset of radio frequency signals to the stored identificationinformation.
 16. The apparatus of claim 12, the radio fingerprintinglogic to store the multi-point radio fingerprint in a radio fingerprintdatabase of the apparatus.
 17. The apparatus of claim 16, the radiofingerprinting logic to determine a location of the one mobile computingdevice based on signal strength information for one or more of thesubset of radio frequency signals and a known location of the apparatus.18. The apparatus of claim 12, the radio fingerprinting logic to storethe multi-point radio fingerprint in a shared radio fingerprint databaseof a coordinating server station accessible by the apparatus.
 19. Theapparatus of claim 18, the radio fingerprinting logic to receive arrivaltime information from the coordinating server station, the arrival timeinformation comprising a time when the subset of radio frequency signalswere received by multiple base stations and determine a location of theone mobile computing device based on the arrival time information and aknown location of two or more of the multiple base stations.
 20. Theapparatus of claim 12, the radio fingerprinting logic to store themulti-point radio fingerprint in a radio fingerprint database of theapparatus, send updated location information for the apparatus to one ormore other devices, receive updated location information and signalstrength information for the subset of radio frequency signals from theone or more other devices, and determine a location of the one mobilecomputing device based on a location of the apparatus, a determinedlocation of the one or more other devices and the received signalstrength information.
 21. The apparatus of claim 12, the radiofingerprinting logic to correlate temporary identification informationfor a first radio frequency signal of the subset of radio frequencysignals with permanent identification information for a second radiofrequency signal of the subset of radio frequency signals to generatethe multi-point radio fingerprint.
 22. The apparatus of claim 21, thefirst radio frequency signal having a greater range than the secondradio frequency signal.
 23. The apparatus of claim 12, the multi-pointradio fingerprint comprising a generic identifier associated with thesubset of radio frequency signals output by the one mobile computingdevice.
 24. A system, comprising: a processor component; memory coupledto the processor component; one or more passive radio receivers coupledto the processor component; one or more antennas coupled to the one ormore radios; and radio fingerprinting logic to be executed by theprocessor component to receive a set of radio frequency signals from theone or more passive radio receivers and associated with multiple mobilecomputing devices at a first time, store identification information forthe set of radio frequency signals, receive a subset of the set of radiofrequency signals from the one or more passive radio receivers andassociated with one of the multiple mobile computing devices at a secondtime, associate identification information for the subset of radiofrequency signals to the one mobile computing device, and generate amulti-point radio fingerprint for the one mobile computing device basedon the subset of radio frequency signals.
 25. The system of claim 24,the one or more passive radio receivers comprising a Software DefinedRadio (SDR).
 26. The system of claim 24, the radio fingerprinting logicto compare the identification information for the subset of radiofrequency signals to the stored identification information to generatethe multi-point radio fingerprint, the multi-point radio fingerprintcomprising a generic identifier associated with the subset of radiofrequency signals output by the one mobile computing device.
 27. Thesystem of claim 24, the radio fingerprinting logic to store themulti-point radio fingerprint in a radio fingerprint database of theapparatus and to determine a location of the one mobile computing devicebased on signal strength information for one or more of the subset ofradio frequency signals and a known location of the apparatus.
 28. Thesystem of claim 24, the radio fingerprinting logic to store themulti-point radio fingerprint in a shared radio fingerprint database ofa coordinating server station accessible by the apparatus, to receivearrival time information from the coordinating server station, thearrival time information comprising a time when the subset of radiofrequency signals were received by multiple base stations, and determinea location of the one mobile computing device based on the arrival timeinformation and a known location of two or more of the multiple basestations.
 29. The system of claim 24, the radio fingerprinting logic tostore the multi-point radio fingerprint in a radio fingerprint databaseof the apparatus, send updated location information for the apparatus toone or more other devices, receive updated location information andsignal strength information for the subset of radio frequency signalsfrom the one or more other devices, and determine a location of the onemobile computing device based on a location of the apparatus, adetermined location of the one or more other devices and the receivedsignal strength information.
 30. The system of claim 24, the radiofingerprinting logic to correlate temporary identification informationfor a first radio frequency signal of the subset of radio frequencysignals with permanent identification information for a second radiofrequency signal of the subset of radio frequency signals to generatethe multi-point radio fingerprint.